import tkinter as tk
from tkinter import simpledialog

class EditManager:
    def __init__(self, root, data_manager):
        self.root = root
        self.data_manager = data_manager

    def open_edit_window(self):
        # 创建一个新的顶级窗口
        self.edit_window = tk.Toplevel(self.root)
        self.edit_window.title("编辑提示词")
        
        # 创建一个文本框用于编辑提示词
        self.text_area = tk.Text(self.edit_window, wrap=tk.WORD, width=80, height=20)
        self.text_area.pack(padx=10, pady=10)
        
        # 创建一个保存按钮
        save_button = tk.Button(self.edit_window, text="保存", command=self.save_edit)
        save_button.pack(pady=5)
        
        # 加载当前提示词内容到文本框中
        current_prompt = self.data_manager.get_current_prompt()
        if current_prompt:
            self.text_area.insert(tk.END, current_prompt)

    def save_edit(self):
        # 获取文本框中的内容
        new_content = self.text_area.get("1.0", tk.END).strip()
        
        # 保存内容到数据管理器
        self.data_manager.save_prompt(new_content)
        
        # 关闭编辑窗口
        self.edit_window.destroy()